.. _ecNet_WaitOutPDOSync: ecNet_WaitOutPDOSync =========================== --------------------------- SYNOPSIS ``````````` .. code-block:: none t_success ecNet_WaitOutPDOSync( [in] t_i32 NetID, [in] t_ui32 Timeout_ms, [out] t_i32*ErrCode ) DESCRIPTION ``````````````` - PDO Date가 DLL에서 Firmware로 전달된 것을 확인하고 리턴합니다. 따라서 설정된 PDO 데이터가 Slave까지 전달되는 것이 보장됩니다. PARAMETER ``````````` - NetID : Network 번호 \ - Timeout_ms : 함수 Hang을 방지하기 위한 Timeout 설정 \ - ErrorCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL 을 전달하면 에러 코드를 반환하지 않습니다. RETURN VALUE ````````````` - 함수 수행의 성공 여부를 반환합니다. .. csv-table:: :widths: 10 85 :header-rows: 1 :stub-columns: 0 Value, Meaning 0, 함수 수행에 실패 하였음을 의미합니다. 1, 함수 수행에 성공 하였음을 의미합니다. EXAMPLE ``````````` - 매 통신 Cycle마다 0xAAAAAAAA 패턴과 0x55555555 패턴을 Digital Output 하는 예시 .. code-block:: c++ :linenos: :emphasize-lines: 5 while (1) { t_ui32 out = 0x00; out = ecdoGetMulti(0, 0, 32, &err); out &= ~0xFFFFFFFF; out |= 0xAAAAAAAA; ecdoPutMulti(0, 0, 32, out, &err); ecNet_WaitOutPDOSync(0, 100, &err); out = ecdoGetMulti(0, 0, 32, &err); out &= ~0xFFFFFFFF; out |= 0x55555555; ecdoPutMulti(0, 0, 32, out, &err); ecNet_WaitOutPDOSync(0, 100, &err); }